home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / DJGPP / DJTST111.ZIP / tests / t15.c < prev   
C/C++ Source or Header  |  1993-11-28  |  3KB  |  69 lines

  1. #include <stdio.h>
  2. #include <go32.h>
  3.  
  4. extern char *__transfer_buffer;
  5.  
  6. char *mname(int m)
  7. {
  8.   switch (m)
  9.   {
  10.     case _GO32_RUN_MODE_UNDEF:
  11.       return "undefined";
  12.     case _GO32_RUN_MODE_RAW:
  13.       return "raw";
  14.     case _GO32_RUN_MODE_XMS:
  15.       return "xms";
  16.     case _GO32_RUN_MODE_VCPI:
  17.       return "vcpi";
  18.     case _GO32_RUN_MODE_DPMI:
  19.       return "dpmi";
  20.     default:
  21.       return "unrecognized";
  22.   }
  23. }
  24.  
  25. main()
  26. {
  27.   printf("  size_of_this_structure_in_bytes = %08x (%d)\n",
  28.     _go32_info_block.size_of_this_structure_in_bytes,
  29.     _go32_info_block.size_of_this_structure_in_bytes);
  30.   printf("  linear_address_of_primary_screen = %08x (%d)\n",
  31.     _go32_info_block.linear_address_of_primary_screen,
  32.     _go32_info_block.linear_address_of_primary_screen);
  33.   printf("  linear_address_of_secondary_screen = %08x (%d)\n",
  34.     _go32_info_block.linear_address_of_secondary_screen,
  35.     _go32_info_block.linear_address_of_secondary_screen);
  36.   printf("  linear_address_of_transfer_buffer = %08x (%d)\n",
  37.     _go32_info_block.linear_address_of_transfer_buffer,
  38.     _go32_info_block.linear_address_of_transfer_buffer);
  39.   printf("  size_of_transfer_buffer = %08x (%d)\n",
  40.     _go32_info_block.size_of_transfer_buffer,
  41.     _go32_info_block.size_of_transfer_buffer);
  42.   printf("  pid = %08x (%d)\n",
  43.     _go32_info_block.pid,
  44.     _go32_info_block.pid);
  45.   printf("  master_interrupt_controller_base = %08x (%d)\n",
  46.     _go32_info_block.master_interrupt_controller_base,
  47.     _go32_info_block.master_interrupt_controller_base);
  48.   printf("  slave_interrupt_controller_base = %08x (%d)\n",
  49.     _go32_info_block.slave_interrupt_controller_base,
  50.     _go32_info_block.slave_interrupt_controller_base);
  51.   printf("  selector_for_linear_memory = %08x (%d)\n",
  52.     _go32_info_block.selector_for_linear_memory,
  53.     _go32_info_block.selector_for_linear_memory);
  54.   printf("  linear_address_of_stub_info_structure = %08x (%d)\n",
  55.     _go32_info_block.linear_address_of_stub_info_structure,
  56.     _go32_info_block.linear_address_of_stub_info_structure);
  57.   printf("  linear_address_of_original_psp = %08x (%d)\n",
  58.     _go32_info_block.linear_address_of_original_psp,
  59.     _go32_info_block.linear_address_of_original_psp);
  60.     
  61.   printf("  run mode is %s (info is 0x%04x (%d))\n",
  62.     mname(_go32_info_block.run_mode),
  63.     _go32_info_block.run_mode_info,
  64.     _go32_info_block.run_mode_info);
  65.  
  66.   printf("\ntransfer_buffer = %08x\n", __transfer_buffer);
  67.   return 0;
  68. }
  69.